package top.dotgo.model.biz;

import java.util.Date;
import java.io.Serializable;
import lombok.Data;
import lombok.experimental.Accessors;
import org.hibernate.annotations.GenericGenerator;
import top.dotgo.model.IBaseEntity;

import javax.persistence.*;

/**
 * 菜单权限表(BizMenu)实体类
 *
 * @author jornl
 * @date 2020-05-21 00:03:49
 */
@Entity
@Data
@Accessors(chain = true)
@Table(name = "biz_menu")
public class BizMenuEntity implements IBaseEntity, Serializable {
       
    @Id
    @GeneratedValue(strategy = GenerationType.AUTO, generator = "custom-id")
    @GenericGenerator(name = "custom-id", strategy = "top.dotgo.model.kit.CustomIDGenerator")
     @Column(name = "id")
     private Long id;
    
    /**
     * 上级id
     */
     @Column(name = "p_id")
     private Integer pId;
    
    /**
     * 菜单名称
     */
     @Column(name = "name")
     private String name;
    
    /**
     * 前端页面url
     */
     @Column(name = "url")
     private String url;
    
    /**
     * 页面打开方式  0弹窗   1页签   2新页面
     */
     @Column(name = "target")
     private Integer target;
    
    /**
     * 菜单类型 （0目录  1菜单  2按钮）
     */
     @Column(name = "type")
     private Integer type;
    
    /**
     * 排序 序号
     */
     @Column(name = "sort")
     private Integer sort;
    
    /**
     * 权限编码
     */
     @Column(name = "perms")
     private String perms;
    
    /**
     * 图标
     */
     @Column(name = "icon")
     private String icon;
    
    /**
     * 备注
     */
     @Column(name = "remark")
     private String remark;
    
    /**
     * 创建者
     */
     @Column(name = "create_by")
     private Long createBy;
    
    /**
     * 创建时间
     */
     @Column(name = "create_time")
     private Date createTime;
    
    /**
     * 修改者
     */
     @Column(name = "edit_by")
     private Long editBy;
    
    /**
     * 修改时间
     */
     @Column(name = "edit_time")
     private Date editTime;
    
    /**
     * 删除人
     */
     @Column(name = "del_by")
     private Long delBy;
    
    /**
     * 删除时间
     */
     @Column(name = "del_time")
     private Date delTime;
    
    /**
     * 状态：0禁用 ，1正常
     */
     @Column(name = "status")
     private Integer status;
    
    /**
     * 适用于 ：0pt平台 ，1biz业务端 ，2微信学生端 ，3微信老师端
     */
     @Column(name = "used")
     private Integer used;
    


}